package pruebas;

import modelo.*;
import junit.framework.TestCase;

public class PistaTest extends TestCase {
	
	private Jugador jugador;
	private Pista pista;
	private Carrera carrera;
	
	public void testSerrecorreLaPistaEnUnaCarrera() throws InterruptedException{
		jugador = new Jugador("alandex", new Auto(new Win32(), new Mess10()));
		pista = new Pista(40,30,30);
		carrera = new Carrera(jugador, pista);
		carrera.comenzar();		
		jugador.getAuto().acelerar();
		Thread.sleep(100);
		jugador.getAuto().moverHaciaLaIzquierda();
		Thread.sleep(100);
		jugador.getAuto().moverHaciaLaIzquierda();
		Thread.sleep(100);
		jugador.getAuto().moverHaciaLaIzquierda();

		Thread.sleep(100);
		jugador.getAuto().moverHaciaLaDerecha();
		Thread.sleep(100);
		jugador.getAuto().moverHaciaLaDerecha();
		Thread.sleep(100);
		jugador.getAuto().moverHaciaLaDerecha();
		Thread.sleep(100);
		jugador.getAuto().moverHaciaLaDerecha();
		Thread.sleep(100);
		jugador.getAuto().moverHaciaLaDerecha();
		
		
		while (!carrera.termino()); /** GameLoop **/
		assertTrue(carrera.gano());
		assertEquals(4, jugador.getAuto().getPosicionEnAncho());
		assertEquals(carrera.getPista().getLargo() - 1, jugador.getAuto().getPosicionEnLargo());
		
	}
}
	
